/**
 * 
 */
package com.buss.base.service;

import com.buss.base.model.DicData;
import com.buss.core.exception.ServiceException;
import com.buss.core.persistence.OrderBy;
import com.buss.core.persistence.Paginalbe;
import com.buss.core.persistence.ResultList;

/**
 * @author gykl
 *
 */
public interface DicDataService {

	/**
	 * 新增数据字典信息
	 * @param dicData
	 */
	public DicData saveDicData(DicData dicData) throws ServiceException;
	
	/**
	 * 修改数据字典信息
	 * @param dicData
	 */
	public void editDicData(DicData dicData);
	
	/**
	 * 删除指定数据字典信息
	 * @param ids
	 */
	public void removeDicData(Long[] ids) throws ServiceException;
	
	/**
	 * 根据主键返回数据字典信息
	 * @param id
	 * @return
	 */
	public DicData loadDicData(Long id);
	
	/**
	 * 
	 * @param companyId
	 * @param code
	 * @return
	 */
	public DicData loadDicData(String companyId,String code);
	
	/**
	 * 根据单位编码和上级数据字典编码获取数据字典列表
	 * @param companyId
	 * @param parentId
	 * @return
	 */
	public ResultList<DicData> queryDicData(String companyId,Long parentId,String name, Paginalbe page,OrderBy orderBy);
	
	/**
	 * 根据单位编码和上级Code获取数据字典信息
	 * @param companyid
	 * @param code
	 * @param page
	 * @return
	 */
	public ResultList<DicData> queryDicData(String companyid,String code,Paginalbe page,OrderBy orderBy);
	
}
